package com.sellerSystem.service;

import java.util.ArrayList;
import java.util.List;

import com.sellerSystem.vo.Commodity;
import com.sellerSystem.vo.ComplaintInfo;
import com.sellerSystem.vo.Demo;
import com.sellerSystem.vo.OrderForm;
import com.sellerSystem.vo.Seller;
import com.sellerSystem.vo.SellerAddress;
import com.sellerSystem.vo.Temp;

/**
 * 方法 注册 登录 修改密码 对商品的增删改查 接受、拒接订单 结算 查看评论
 * 
 *
 */
public interface SellerManager {
	// 卖家注册
	public int regist(Seller seller);

	// 卖家登录
	public Seller login(String sellerTel, String sellerPsd);

	// 查询所有Seller信息
	public ArrayList<Seller> seller(Integer sellerState);

	// 修改密码
	public int modifyPsd(String sellerTel, String sellerPsd);

	// 修改个人信息
	public int modifyInfo(Seller seller);

	// 判断用户电话是否存在
	public boolean isExist(String sellerTel);

	// 增加商品
	public int addCommodity(Commodity commodity);

	// 修改商品
	public int modifyCommodity(Commodity commodity);

	// 删除商品
	public int deleteCommodity(Commodity commodity);

	// 查询商品
	public Commodity queryCommodity(Integer commodityId);

	// 查看评价
	public void checkEvaluation();

	// 通过卖家查询商品
	public ArrayList<Commodity> findCommodity(String sellerName);

	// 查找单个Seller信息
	public Seller findId(int sellerId);

	// 查询所有账单
	public List<OrderForm> allbill();
	

	// 通过id查询账单
	public List<OrderForm> billbyid(String sellerName, String time1,
			String time2);

	// 查询个人账单
	public List<OrderForm> billName(String sellerName);

	// 查询个人账单
	public List<Demo> billName1(String sellerName);


	// 修改商家状态
	public int modifystate(Integer sellerId);

	// 加入黑名单
	public int joinblack(Integer sellerId, String sellerRemark);

	// 查询对某一卖家的投诉信息
	public List<ComplaintInfo> findComplaintInfo(Integer sellerId);

	// 查询卖家的投诉信息统计
	public List<Seller> countComplaintInfo();

	// 查询待黑
	public List<Seller> ifBlacklist();

	// 不拉黑
	public int noblack(Integer sellerId);

	// 审核不通过
	public int approvalfail(Integer sellerId, String approvalOpinion);

	// 查询所有投诉信息
	public List<ComplaintInfo> complaintInfo();

	// 修改订单状态
	public int modifyofstate(OrderForm orderForm);

	// 反馈投诉信息
	public int handlecomplaint(Integer complaintInfoId,Integer complaintStatu,String complaintFeedback);

	// 某一卖家日账单查询
	public List<Temp> findBillBySellerIdAndDay(String sellerName);

	// 某一卖家月账单查询
	public List<Temp> findBillBySellerIdAndMonth(String sellerName);

	// 某一卖家年账单查询
	public List<Temp> findBillBySellerIdAndYear(String sellerName);

	// 商场日账单查询
	public List<Temp> findBillByDay();

	// 商场月账单查询
	public List<Temp> findBillByMonth();

	// 商场年账单查询
	public List<Temp> findBillByYear();

}
